package com.code.day18JiHe.ArraysList;

import java.util.LinkedList;

public class Demo03LinkedList {
    public static void main(String[] args) {
        // 创建一个LinkedList对象，用于存储字符串类型的元素
        LinkedList<String> linkedList = new LinkedList<>();

        // 使用push方法向链表头部添加元素（栈的操作方式）
        linkedList.push("小龙女");  // 添加"小龙女"到链表头部
        linkedList.push("杨过");    // 添加"杨过"到链表头部
        linkedList.push("周伯通");  // 添加"周伯通"到链表头部

        // 打印当前链表内容，由于是栈结构，后进先出，所以显示顺序为[周伯通, 杨过, 小龙女]
        System.out.println(linkedList);
        System.out.println("===================");

        // 使用pop方法从链表头部移除并返回元素（栈的操作方式）
        String s1 = linkedList.pop();  // 移除并获取第一个元素"周伯通"
        String s2 = linkedList.pop();  // 移除并获取第二个元素"杨过"
        String s3 = linkedList.pop();  // 移除并获取第三个元素"小龙女"

        // 打印被移除的元素
        System.out.println(s1);  // 输出：周伯通
        System.out.println(s2);  // 输出：杨过
        System.out.println(s3);  // 输出：小龙女
    }
}
